package com.ydc.ln.tutorial.j2se.test;

public class ThreadTest_01 {
	public static void main(String[] args) {
		System.out.println("begin:\t" + (System.currentTimeMillis()/1000));
		/*  
		           模拟处理16行日志，下面的代码产生了16个日志对象，当前代码需要运行16秒才能打印完这些日志。
			修改程序代码，开四个线程让这16个对象在4秒钟打完。
		*/
		ThreadTest lt1 = new ThreadTest();
		ThreadTest lt2 = new ThreadTest();
		ThreadTest lt3 = new ThreadTest();
		ThreadTest lt4 = new ThreadTest();
		
		for (int i=0; i<16; i++) { // 这行代码不能改动
			final String log = "" + (i+1);	// 这行代码不能改动
			{
				// Test.parseLog(log);
				if(i%4==0) {
					lt1.setLog(log);
					lt1.start();
					
				} 
//				else if(i%4==1) {
//					lt2.setLog(log);
//					lt2.start();
//				} else if (i%4==2) {
//					lt3.setLog(log);
//					lt3.start();
//				} else if (i%4==3) {
//					lt4.setLog(log);
//					lt4.start();
//				}
			}
		}
	}
	
	// parseLog方法内部的代码不能改动
	public static synchronized void parseLog(String log) {
		System.out.println(log + ":\t" + (System.currentTimeMillis()/1000));
		try {
			Thread.sleep(1000);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}
}
